package main

import (
	"fmt"
	"reflect"
	"sort"
)

// 判断数组是否已排序,思路:对现有数组赋值,然后排序,比较排序后的数组与目前数组是否相等确认是否已排序
func isSorted(arr []int) bool {
	n := len(arr)
	// 创建一个新数组
	sortedArr := make([]int, n)
	// 赋值数组内容
	copy(sortedArr, arr)
	// 对新的数组排序,go内置方法
	sort.Ints(sortedArr)
	// 判断两数组是否相等
	return reflect.DeepEqual(sortedArr, arr)
}

func main() {
	arr := []int{1, 3, 8, 6, -1, 0, 99, 22, 13}
	sorted := isSorted(arr)
	fmt.Println(sorted)
}
